package com.yidu.menuProject.dao;

import java.util.List;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;

import com.yidu.menuProject.action.vo.SiteAndUser;
import com.yidu.menuProject.model.SiteModel;
import com.yidu.menuProject.model.TuserModel;

public interface SiteModelMapper {
    public int deleteByPrimaryKey(String siteId);

    int insert(SiteModel record);

    public int insertSelective(SiteModel record);

    public SiteModel selectByPrimaryKey(String siteId);

    public int updateByPrimaryKeySelective(SiteModel record);

    int updateByPrimaryKey(SiteModel record);
    
    public List<SiteAndUser> findAll(String userId);

    /**
     * 增加用户电话号码
     * @param userPhone 用户号码
     * @return 行数
     */
    @Insert("insert into tuser(user_id,user_phone,user_name) values(#{userId,jdbcType=VARCHAR},#{userPhone,jdbcType=VARCHAR}),#{userName,jdbcType=VARCHAR}) ")
    public int addPhone(TuserModel user);
    /**
     * 增加收货地址
     * @return 行数
     */
    @Insert("insert into site(site_id,user_id,site_name,isva) values(#{siteId,jdbcType=VARCHAR},#{userId,jdbcType=VARCHAR},#{siteName,jdbcType=VARCHAR},#{isva,jdbcType=INTEGER})")
    public int addSite(SiteModel site);
   
    /**
     * 收货地址的查询与修改
     * @return 集合  
     */
   
   
    public List<SiteModel> findSite(SiteModel site);
    
    /**
     * 根据用户id查询用户收货地址
     * @param userId 用户id
     * @return 集合
     */
    public List<SiteModel> findSiteById(@Param("siteId") String siteId);
    
   
    
    /**
     * 删除用户收货地址
     * @param userId 用户id
     * @return 行数
     */
    @Update("UPDATE  site SET  isva=#{isva,jdbcType=INTEGER} WHERE site_id=#{siteId,jdbcType=VARCHAR}")
    public int deleteResiverArea(@Param("isva") Integer isva,@Param("siteId") String siteId);
    /**
     * 修改用户收货地址 
     * @param siteName 地址
     * @param userPhone 用户电话号码
     * @param userId 用户ID
     * @return
     */  
    @Update("update site set site_name=#{siteName,jdbcType=VARCHAR} where site_id=#{siteId,jdbcType=VARCHAR}")
    public int updateAreaTele(@Param("siteName") String siteName,@Param("siteId")String siteId);
    
}